Rewriting a Pattern Language to Make it More Expressive
نویسندگان
چکیده
Representing and selecting patterns remains largely an empirical task. It is difficult to recognize when to apply a given pattern, as well as the consequences its application could generate. This creates the need for extensions to the existing pattern representation. Elsewhere, we have proposed an explicit representation of the forces involved in a pattern and their interrelationships. It interprets forces as non-functional requirements, and uses the non-functional requirements framework developed in requirements engineering to analyze the context of applicability of a pattern, and its consequences. In this paper we describe a case study in which we apply our new pattern representation to an existing pattern language. We illustrate how the extended pattern representation enables us to discover contributions made by the patterns to overall system concerns that were implicit in the textual description of the pattern.
منابع مشابه
PROGRES, A Visual Language and Environment for PROgramming with Graph REwriting Systems1
Graphs play an important role within many areas of applied computer science, and there exists an abundance of (diagrammatic) visual languages which have graphs as their underlying data model. Furthermore, rule-based languages and systems have proven to be well-suited for the description of complex transformation or inference processes on complex data structures. Although graphs and rule-based s...
متن کاملACD Term Rewriting
In this paper we introduce Associative Commutative Distributive Term Rewriting (ACDTR), a rewriting language for rewriting logical formulae. ACDTR extends AC term rewriting by adding distribution of conjunction over other operators. Conjunction is vital for expressive term rewriting systems since it allows us to require that multiple conditions hold for a term rewriting rule to be used. ACDTR u...
متن کاملArchitectural Design Rewriting as an Architecture Description Language
Architectural Design Rewriting (ADR) is a declarative rule-based approach for the design of dynamic software architectures. The key features that make ADR a suitable and expressive framework are the algebraic presentation of graph-based structures and the use of conditional rewrite rules. These features enable the modelling of, e.g. hierarchical design, inductively defined reconfigurations and ...
متن کاملGrGen: A Fast SPO-Based Graph Rewriting Tool
Graph rewriting is a powerful technique that requires graph pattern matching, which is an NP-complete problem. We present GrGen, a generative programming system for graph rewriting, which applies heuristic optimizations. According to Varró’s benchmark it is at least one order of magnitude faster than any other tool known to us. Our graph rewriting tool implements the well-founded single-pushout...
متن کاملThe Logical Meeting Point of Multiset Rewriting and Process Algebra: Progress Report
We present a revisited semantics for multiset rewriting founded on the left sequent rules of linear logic in its LV presentation. The resulting interpretation is extended with a majority of linear connectives into the language of ωmultisets. It drops the distinction between multiset elements and rewrite rules, and considerably enriches the expressive power of standard multiset rewriting with em...
متن کامل